STARKベースのZK Rollup『StarkNet』
TL;DR
ゼロ知識証明STARKベースのZK Rollup『StarkNet』
パフォーマンスは3,000 tpsを記録、トランザクションあたりのガスコストは315 gas
現在はアプリケーション作成の基盤となるCairo言語などの開発が進んだ段階
今後は開発者が独自のアプリケーションをデプロイしたり、複数のアプリケーションが同じグローバルステートを参照したりできるように開発が進められる
StarkNetとは
StarkNetはゼロ知識証明STARKを用いたZK Rollupである。トランザクションは定期的にバッチ処理され、その状態遷移のvalidityを証明するSTARKプルーフがEthereum上に記録され検証される。この検証の計算量はプルーフの生成よりも指数関数的に効率的である。StarkNetのステートを再構築するためのデータは全てオンチェーンで公開される。 https://gyazo.com/6baad80c81fa4a27df0236b4ae7bf511
StarkNet上のアプリケーションは、チューリング完全の言語Cairoによって生成される。Cairoは一般の計算のためにSTARKプルーフを生成する。近いうちにCairoには『Generic Proof Service』のアルファ版が導入される。Generic Proof Serviceとは、独立した異なるアプリケーションの状態遷移を単一の証明で保証することで、ガスコストを削減する技術及びサービスである。 現状StarkNetのパフォーマンスは3,000 tpsを記録している。トランザクションあたり315 gasであり、これは現在のEthereumの送金トランザクションが21,000 gasかかることを踏まえると桁違いに小さい。
cipepser.icon トランザクションの内容が違うので大雑把な議論になるとは思いますが、70個くらいのトランザクションがまとめられるイメージなんですかね
minaminao.icon ロードマップの記事には、300,000個のトランザクションが一つのプルーフで処理できた、と書かれていました。現状1ブロックあたりだいたい100~200トランザクションが含まれるので、これと比べると非常に大きな値ですね。
cipepser.icon 桁が違ったw
また、StarkNetにはStarkExというスケーラビリティエンジンがある。StarkExは、様々な取引ロジック(現物取引、デリバティブ、NFTなど)や決済を処理でき、他のアプリケーションからの利用ができる。StarkExはすでに2020年6月からDeversiFiにメインネットで提供されており、dYdXやImmutableXにも提供される予定である。 StarkNetのロードマップ
StarkNetの開発者は、ロードマップとして4つのステップに分解している。
Step 0 — Foundations
Step 0は完了済み。先述したCairoやStarkExなどのStarkNet上で分散型アプリケーションを構築するのに必要な基盤を開発するステップ。
Step I — Planets: Single-App Rollups
今後数ヶ月進められる。分散型アプリケーションの開発者がStarkNet上に独自のアプリケーションをデプロイできるようになるステップ。
Step II — Constellations: Multi-App Rollups
同じL2のグローバルステートにアクセスできる複数のアプリケーションをStarkNet上のインスタンスでデプロイできるようになるステップ。このステップでL2上の異なるアプリケーション間の相互運用性が向上する。また、ガスコスト削減のメリットもある。
Step III — Universe: A Decentralized Rollup
このステップは、StarkNetのRollupオペレータを効率的かつ安全に分散化させるためのステップ。そのためにクリプトエコノミクス的なインセンティブを設計する必要がある。
cipepser.icon Step IIまではSTARKWAREがRollupオペレータを担う感じです?
minaminao.icon 明記されてませんが、アプリケーションごとにオペレータが1人しか用意されるという記述があり、おそらくStep Ⅱまでのオペレータはアプリケーションをデプロイした人が運用するケースほとんどなのかなーと考えてます(パーミッションド)。Step Ⅲからは誰でも色んなアプリケーションのオペレータになれるのかと(パーミッションレス)。
cipepser.icon nrhd